﻿/**
 * Файл содержащий скрипты, необходимые для правильного функционирования логики регистрации и авторизации на сайте
 */

/**
 * Функция, отображающая форму регистрации. Если формы нет - она загружается аяксом, а затем отображается с помощью анимации, предварительно прячясь
 */
function toggleRegistrationForm(){
    // проверяем виден ли блок
    var block = $("#registrationContentHolder");
    if (block.css("display") == "block"){
        block.slideUp("slow");
    }

    // Если у нас загружена требуемая форма - оставляем ее
    if (block.data("currentForm") == "register"){
        return;
    }

    // Загружаем форму регистрации аяксом
    block.load("/Account/Register",null,function(text,status,request){
        // Прерываем анимацию если она есть
        block.stop(true,true);
        // Отображаем новую форму
        block.slideDown("slow");
        block.data("currentForm","register");
	    // Валидируем форму
	    window.InitRegisterValidation();

	    // Проверка занятости логина
	    $("#registerForm #UserName").keyup(function () {
		    var value = $("#registerForm #UserName").val();
		    var check = $("#registerForm #CheckingUserName");
		    var avaliable = $('#registerForm #UserNameAvailability');

		    $(check).show();
		    setTimeout(function () {
			    $(check).hide();
			    $.post("/Account/CheckUserName", value, function (data) {
				    if (data === 'True') {
					    $(avaliable).text('имя пользователя доступно').css('color', '#005B82')
				    } else {
					    $(avaliable).text('имя пользователя не доступно').css('color', '#FF0000')
				    }
			    });
			    return false;
		    }, 600)
	    });
    });
}

/**
 * Функция, отображающая форму входа. Если формы нет - она загружается аяксом, а затем отображается с помощью анимации, предварительно прячясь
 */
function toggleLogOnForm(){
    // проверяем виден ли блок
    var block = $("#registrationContentHolder");
    if (block.css("display") == "block"){
        block.slideUp("slow");
    }

    // Если у нас загружена требуемая форма - оставляем ее
    if (block.data("currentForm") == "logon"){
        return;
    }

    // Загружаем форму регистрации аяксом
    block.load("/Account/LogOn",null,function(text,status,request){
        // Прерываем анимацию если она есть
        block.stop(true,true);
        // Отображаем новую форму
        block.slideDown("slow");
        block.data("currentForm","logon");
	    // Валидируем форму
	    window.InitAuthorizationValidation();
    });
}



/**
 * Функция, отображающая блок обучения по работе с сайтом. Если формы нет - она загружается аяксом а затем отображается с помощью анимации предварительно прячясь
 */
function toggleTutorialBlock(){
    // проверяем виден ли блок
    var block = $("#registrationContentHolder");
    if (block.css("display") == "block"){
        block.slideUp("slow");
    }

    // Если у нас загружена требуемая форма - оставляем ее
    if (block.data("currentForm") == "tutorial"){
        return;
    }

    // Загружаем форму регистрации аяксом
    block.load("/GigaProjects/Tutorial",null,function(text,status,request){
        // Прерываем анимацию если она есть
        block.stop(true,true);
        // Отображаем новую форму
        block.slideDown("slow");
        block.data("currentForm","tutorial");
    });
}
